آموزش ساخت بازی سه بعدی به زبان Basic با دارک بیسیک Dark Basic
تهیه و آموزش نرم افزار دارک بیسیک
 
 
جمعه 23 فروردين 1392برچسب:, :: 1:12 ::  نويسنده : ابوالفضل

 در این فصل یاد می گیریم تا بر روی فایل ها و پوشه های موجود در Hard کامپیوتر کار کنیم . مثلا فایل یا پوشه ای را کپی ، ایجاد ، حذف ، تغییر نام و ... را انجام دهیم .

 

دستور DIR

این دستور اسامی تمامی فایل ها و پوشه هایی را که در مسیر جاری وجود دارند ، بر روی صفحه ی نمایشگر چاپ می کند . یعنی اگر مسیر جاری C:Example باشد ، اسامی فایل ها و پوشه های موجود در این مسیر چاپ خواهد شد . مانند مثال زیر :

 

Dir

Do

Loop

 

دستورات PERFORM CHECKLIST FOR FILES

این سلسله از دستورات ، مانند دستور قبلی ( یعنی دستور DIR ) اسامی تمامی فایل ها و پوشه هایی را که در مسیر جاری وجود دارند را برمی گرداند . با این تفاوت که علاوه بر نمایش آنها ، توابع این دستورات کنترل بیشتری بر روی داده ها به ما خواهد داد . مانند مثال زیر :

 

Perform Checklist For Files

()For T = 1 to CheckList Quantity

(Print "Files = " + CheckList String$(T

Next T

Wait Key

 

تابع GET DIR

با استفاده از این تابع می توانیم مسیر جاری را پیدا کنیم . مانند مثال زیر :

 

()$Print "Current Dir = " + Get Dir

Wait Key

 

دستور SET DIR

با این دستور می توانیم مسیر جاری را تغییر دهیم . یعنی اگر مسیر بر روی /:C تنظیم شود ، با استفاده از دستور Dir می توانیم اسامی فایل ها و پوشه های موجود در این مسیر را نمایش دهیم . مانند مثال زیر :

 

"/:Set Dir "C

Dir

Wait Key

 

با اجرای این مثال اسامی تمامی فایل ها و پوشه های موجود در مسیر /:C نمایش داده خواهد شد .

 

تابع WINDIR

این تابع مسیری که ویندوز در آن نصب شده باشد را برمی گرداند . مانند مثال زیر :

 

()$Print "Current Windows Directory = " + WinDir

Wait Key

 

تابع APPNAME

این تابع نام و مسیر برنامه ی ما را در حالت اجرا برمی گرداند . یعنی اگر برنامه ای که می نویسیم در هر مسیری وجود داشته باشد . موقع اجرای برنامه ، تابع APPNAME مسیر و نام برنامه ی ما را برمی گرداند . مانند مثال زیر :

 

()$Print "AppName = " + AppName

Wait Key

 

دستور DRIVELIST

این دستور اسامی درایو های موجود در HARD را چاپ می کند . مانند مثال زیر :

 

DriveList

do

loop

 

دستورات PERFORM CHECKLIST FOR DRIVES

این تابع همانند دستور قبلی نام درایو های موجود را برمی گرداند . مانند مثال زیر :

 

Perform Checklist For Drives

()For T = 1 to CheckList Quantity

(Print "Drives = " + Checklist String$(T

Next T

Wait Key

 

تفاوت این دستورات با دستور قبلی ( Drive List ) در توابع آن می باشد . یعنی با این دستورات و توابع می توانیم کنترل بیشتری بروی نام و تعداد درایو ها داشته باشیم .

 

دستور MAKE FILE

با این دستور می توانیم فایل خالی با فرمت دلخواه در هر مسیری ایجاد کنیم . مانند دستورالعمل زیر :

 

MAKE FILE fileName

 

طبق این دستورالعمل به جای fileName نام درایو و مسیر موجود و نام فایل و فرمت آن را قرار می دهیم . مانند مثال زیر :

 

"Make File "C:MyDirectoryMyFile.txt

 

با اجرای این مثال فایلی با نام MyFile با فرمت txt در مسیر C:MyDirectory ایجاد می شود .

نکته 1 : اگر فایلی قبلا با همین نام و فرمت در همین مسیر وجود داشته باشد . آن فایل پاک خواهد شد و یک فایل خالی جایگزین آن می شود .

 

نکته 2 : اگر مسیر انتخابی برای ایجاد فایل وجود نداشته باشد ، هیچ فایلی ایجاد نخواهد شد . در این مثال اگر دارکتوری MyDirectory در درایو C وجود نداشته باشد ، هیچ فایلی ایجاد نخواهد شد .

 

دستور MAKE DIRECTORY

با این دستور می توانیم یک دایرکتوری خالی ( پوشه ای برای نگه داشتن پوشه ها و فایل ها ) ایجاد کنیم . مانند دستورالعمل زیر :

 

MAKE DIRECTORY DirectoryName

 

طبق این دستورالعمل به جای DirectoryName مسیر و نام دایرکتوری ( پوشه ) جدید را قرار می دهیم . مانند مثال زیر :

 

"Make Directory "C:/oldDirectory/NewDirectory

 

با اجرای این مثال دارکتوری NewDirectory در مسیر C:/oldDirectory ایجاد می شود .

نکته : اگر مسیری برای ایجاد داریکتوری وجود نداشته باشد ، داریکتوری جدید ایجاد نخواهد شد .

 

دستور DELETE FILE

با این دستور می توانیم فایلی را که از قبل ایجاد شده را ، حذف کنیم ( از بین ببریم ) . مانند دستورالعمل زیر :

 

DELETE FILE Filename

 

طبق این دستورالعمل به جای Filename مسیر و نام فایل مورد نظر را جهت پاک شدن قرار می دهیم . مانند مثال زیر :

 

"Delete File "C:/MyDirectory/File.dat

با اجرای این مثال فایل File.dat موجود در مسیر C:/MyDirectory حذف می شود .

 

دستور COPY FILE

این دستور فایلی که قبلا ایجاد شده باشد را ، در مسیری دلخواه کپی می کند . مانند دستوالعمل زیر :

 

COPY FILE SourceFilename,DestinationFilename

 

طبق این دستورالعمل به جای SourceFilename مسیر و نام فایلی که می خواهیم از روی آن کپی ایجاد کنیم را ، قرار می دهیم و به جای DestinationFilename مسیر و نام فایل جدید را قرار می دهیم .

می توانیم در قسمت DestinationFilename نام جدیدی برای فایل جدید در نظر بگیریم ، منتهی مسیر مورد نظر برای فایل جدید باید وجود داشته باشد .

 

"Copy File "C:/data.dat","D:/MyDirextory/backupdata.dat

 

با اجرای این مثال فایلی جدید با نام backupdata.dat در مسیر D:/MyDirextory از روی فایل data.dat موجود در مسیر :C ایجاد خواهد شد .

 

دستور MOVE FILE

با این دستور می توانیم فایل موجود را به مسیر جدید انتقال دهیم . همچنین می توانیم نام جدیدی را هم در نظر بگیریم . مانند دستورالعمل زیر :

 

MOVE FILE SourceFilename,DestinationFilename

 

طبق این دستورالعمل به جای SourceFilename مسیر و نام فایلی را که می خواهیم انتقال دهیم ، قرار می دهیم و به جای DestinationFilename مسیر و نام جدیدی را برای انتقال در نظر می گیریم .

 

نکته : مسیر مورد نظر برای انتقال فایل باید وجود داشته باشد .

 

"Move File "C:oldfile.txt","d:oldfile.txt

 

یا

 

"Move File "C:oldfile.txt","d: ewfile.txt

 

دستور RENAME FILE

با استفاده این دستور می توانیم فایل مورد نظرمان را تغییر نام دهیم . مانند دستورالعمل زیر :

 

RENAME FILE SourceFilename,NewFilename

 

طبق این دستورالعمل به جای SourceFilename نام و مسیر فایل مورد نظرمان را قرار می دهیم و به جای NewFilename نام جدیدی را وارد می کنیم . مانند مثال زیر :

 

"Rename File "C:Data.txt","C: ewData.txt

 

نکته : طبق دستورالعمل اگر به جای NewFilename مسیر جدیدی را قرار دهیم ، فایل به مسیر جدید و با نام جدید نقل مکان خواهد کرد . مانند مثال زیر :

 

"Rename File "C:Data.txt","D: ewData.txt

 

در این مثال علاوه بر این که نام فایل از Data به newData تغییر پیدار کرد . خود فایل هم از مسیر :C به مسیر :D انتقال پیدا کرد .

 

دستور EXECUTE FILE

از این دستور برای اجرای فایل ها استفاده می کنیم . مانند دستورالعمل زیر :

 

EXECUTE FILE Filename,Commandline,Directory

 

طبق این دستورالعمل به جای Filename نام و مسیر فایل اجرایی مورد نظرمان را قرار می دهیم . مانند مثال زیر :

 

"","","EXECUTE FILE "C:WINDOWSNotePad.exe

Wait Key

 

با اجرای این مثال برنامه ی NotePad اجرا خواهد شد . این برنامه فایلی است با فرمت Exe و به تنهایی اجرا می شود . ولی فایل هایی هم هستند که اجرایی نیستند ؛ بلکه اطلاعاتی را برای برنامه های دیگر نگه می دارند . مانند فایل هایی با فرمت Doc که توسط برنامه ی Microsot Word ایجاد شده اند . پس برای استفاده و باز کردن این فایل باید به جای Directory نام و مسیر فایل برنامه ی Microsoft Word را هم قرار دهیم . مانند مثال زیر :

 

EXECUTE FILE "C:MyFile.Doc","","C:Program FilesMicrosoft 

"OfficeOffice10WinWord.Exe

Wait Key

 

اگر برنامه ی Microsoft Word از قبل نصب شده باشد . می توانیم تنها نام و مسیر فایل را قرار دهیم . مانند مثال زیر :

 

"","","EXECUTE FILE "C:MyFile.Doc

Wait Key

 

تابع FILE EXIST

با استفاده از این تابع می توانیم بفهمیم که آیا فایل مورد نظرمان وجود دارد یا خیر . مانند دستورالعمل زیر :

 

(ReturnInteger = FILE EXIST(Filename

 

طبق این روش به جای Filename نام و مسیر فایل مورد نظرمان را قرار می دهیم . اگر فایل مورد نظر در مسیر وجود داشته باشد ، ReturnInteger برابر یک و اگر وجود نداشته باشد ، ReturnInteger برابر صفر خواهد بود . مانند مثال زیر :

 

"myFile$ = "C:MyDirectoryFile.exe

"If File Exist(myFile$)=1 Then Print "Yes" Else Print "No

Wait Key

 

با اجرای این مثال اگر فایل File با فرمت exe در مسیر C:MyDirectory ، وجود داشته باشد ، عبارت Yes و اگر وجود نداشته باشد ، عبارت No چاپ خواهد شد .

 

تابع PATH EXIST

با این تابع می توانیم بررسی کنیم که آیا مسیر مورد نظرمان وجود دارد یا خیر . مانند دستورالعمل زیر :

 

(ReturnInteger = PATH EXIST(PATH

 

طبق این دستورالعمل به جای PATH مسیر مورد نظرمان را قرار می دهیم . اگر مسیر مورد نظر وجود داشته باشد ، ReturnInteger برابر یک و اگر وجود نداشته باشد ، ReturnInteger برابر صفر خواهد بود . مانند مثال زیر :

 

"myPath$ = "C:MyDirectoryDirect

"If Path Exist(myPath$)=1 Then Print "Yes" Else Print "No

Wait Key

 

با اجرای این مثال اگر مسیر C:MyDirectoryDirect وجود داشته باشد ، عبارت Yes و اگر وجود نداشته باشد ، عبارت No چاپ خواهد شد .

 

دستور OPEN TO WRITE و دستور ClOSE FILE

با استفاده از این دستور می توانیم فایلی را جهت نوشتن اطلاعات در آن باز کنیم . مانند دستورالعمل زیر :

 

OPEN TO WRITE FileNumber,Filename

 

طبق این دستورالعمل به جای Filename نام و مسیر فایل مورد نظرمان را قرار می دهیم . و به جای FileNumber یک عدد بین 1 تا 32 قرار می دهیم و در برنامه توسط همین شاخص عددی می توانیم به فایل باز شده ، فرمان خواندن و یا نوشتن اطلاعات را بدهیم . در واقع برای هر فایل باز شده در برنامه ، باید یک عدد به آن فایل اختصاص پیدا کند . مانند مثال زیر :

 

"Open To Write 1,"C:Data.dat

Close File 1

 

با اجرای این مثال فایل Data.dat را با هدف نوشتن اطلاعات در آن باز کردیم و عدد یک را به آن اختصال دادیم . و در خط بعدی با توجه به عددی که به فایل باز شده اختصاص داده بودیم ، فایل را بستیم . فایل باز شده بعد از اتمام کار باید بسته شود تا از آسیب دیدگی آن جلوگیری بعمل آید .

 

تابع FILE OPEN

این تابع باز و یا بسته بود فایل را بررسی می کند . یعنی طبق عددی را که در برنامه به هر فایل اختصاص داده بودیم ، آن عدد در این تابع وارد شود ، اگر فایل مورد نظر باز بوده باشد ، مقدار این تابع عدد یک و در غیر اینصورت اگر فایل بسته باشد ، عدد صفر توسط این تابع برگردانده خواهد شد . یعنی اگر از دستور Close File استفاده شده باشد ، عدد صفر توسط این تابع برگردانده خواهد شد . مانند مثال زیر :

 

"Open To Write 1,"C:Data.dat

"If File Open(1)=1 Then Print "File Is Open" Else Print "File Is Close

Close File 1

"If File Open(1)=1 Then Print "File Is Open" Else Print "File Is Close

Wait Key

 

در این مثال در خط اول ، فایل Data.dat موجود در مسیر :C جهت نوشتن اطلاعت باز شد و در خط دوم تابع ()File Open به دلیل باز بودن فایل عدد یک را برگرداند و عبارت File Is Open چاپ شد و در خط سوم فایل بسته شد . به همین دلیل تابع ()File Open به دلیل بسته بودن فایل عدد صفر را برگرداند و عبارت File Is Close چاپ شد .

 

توجه ! اگر فایل Data.dat وجود نداشت ، با دستور Open To Write بطور خودکار ایجاد و باز می شد .

 

دستور WRITE WORD

با این دستور می توانیم عددی را در محدوده ی متغیر از نوع Word ، داخل فایل بنویسیم . مانند دستورالعمل زیر :

 

WRITE WORD FileNumber,Variable

 

طبق این دستورالعمل به جای FileNumber عدد اختصاص داده شده به فایل و به جای Variable عددی با محدوده متغیر Word یعنی عددی بین 0 تا 65535 جهت ذخیره شدن در Hard قرار می دهیم . مانند مثال زیر :

 

"Open To Write 1,"Data.dat

If File Open(1)=1

   write word 1,42

EndIf

Close File 1

 

در این مثال ابتدا فایل Data.dat را جهت نوشتن اطلاعات باز می کنیم . سپس قبل از نوشتن اطلاعات داخل فایل بررسی می کنیم که آیا فایل برای نوشته شدن اطلاعات باز است یا بسته . در صورت باز بودن ، می توانیم اطلاعات را در آن بنویسیم و بعد فایل را ببندیم .

 

نکته : در این مثال فرض بر این است که فایل Data.dat در پوشه ی پروژه است ( یعنی فایل Data.dat کنار فایل اجرایی است ) . به خاطر همین مسیر فایل را تایپ نکردیم .

 

دستور OPEN TO READ

با استفاده از این دستور می توانیم فایلی را جهت خواندن اطلاعات از آن باز کنیم . مانند دستورالعمل زیر :

 

OPEN TO READ FileNumber,Filename

 

طبق این دستورالعمل به جای Filename نام و مسیر فایل مورد نظرمان را قرار می دهیم . و به جای FileNumber یک عدد بین 1 تا 32 قرار می دهیم . مانند مثال زیر :

 

"Open To Read 1,"C:Data.dat

Close File 1

 

با اجرای این مثال فایل Data.dat را با هدف خواندن اطلاعات از آن باز کردیم و عدد یک را به آن اختصال دادیم . و در خط بعدی با توجه به عددی که به فایل باز شده اختصاص داده بودیم ، فایل را بستیم . دقت کنید تا فایل باز شده بعد از اتمام کار حتما بسته شود تا از آسیب دیدن جلوگیری شود .

 

دستور READ WORD

با این دستور می توانیم عددی را در محدوده ی متغیری از نوع Word ، که از قبل داخل فایل نوشته بودیم ، بخوانیم . مانند دستورالعمل زیر :

 

READ WORD FileNumber,Variable

 

در این مثال به جای FileNumber عدد اختصاص داده شده به فایل و به جای Variable متغیری با محدوده متغیر Word قرار می دهید . مانند مثال زیر :

 

"Open To Read 1,"Data.dat

If File Open(1)=1

Read word 1,A

Print A

EndIf

Close File 1

 

در این مثال ابتدا فایل را جهت خواندن اطلاعات باز می کنیم . سپس قبل از خواندن اطلاعات داخل فایل بررسی می کنیم که آیا فایل برای خواندن اطلاعات از آن باز است یا نه . در صورت باز بودن ، می توانیم اطلاعات را از آن بخوانیم و بعد فایل را ببندیم . در این مثال ما یک متغیر به نام َA ایجاد کردیم تا از داده استفاده کنیم .

 

نکته : در مثال های اخیر ما مسیر فایل را مشخص نکردیم . یعنی عبارت , "Data.dat" به این معنی است که فایل در همان مسیری ایجاد شود که برنامه ما هم اکنون در آن مسیر در حال اجراست . یعنی اگر مسیر پروژه ی ما در آدرس زیر

C:Program FilesDark Basic SoftwareDark Basic ProfessionalProjectsprjExample

 ایجاد شده باشد . با اجرای برنامه ، فایل Data.dat در همین مسیر ایجاد خواهد شد . و اگر فایل را Compile کنیم . یعنی آن را اجرایی کنیم و فایلی با فرمت Exe ایجاد گردد ، می توانیم آن فایل را در هر مسیری و در هر کامپیوتری کپی کنیم و فایل Data.dat هم با این روش کنار فایل اجرایی یعنی در همان پوشه ای که فایل اجرایی در آن وجود دارد ایجاد خواهد شد . از این روش در تمامی دستورات مربوط به کار با فایل ها در تمامی وبلاگ می توان استفاده کرد . مگر اینکه مسیر جاری توسط دستور SET DIR تغییر پیدا کند .

 

دستور WRITE BYTE

با این دستور می توانیم عددی در محدوده ی متغیری از نوع Byte ، داخل فایل بنویسیم . مانند دستورالعمل زیر :

 

WRITE Byte FileNumber,Variable

 

دستور READ BYTE

با این دستور می توانیم عددی را در محدوده ی متغیری از نوع Byte ، که از قبل داخل فایل نوشته بودیم ، بخوانیم . مانند دستورالعمل زیر :

 

READ BYTE FileNumber,Variable

 

دستور WRITE LONG

با این دستور می توانیم عددی در محدوده ی متغیری از نوع Integer ، داخل فایل بنویسیم . مانند دستورالعمل زیر :

 

WRITE LONG FileNumber,Variable

 

دستور READ LONG

با این دستور می توانیم عددی را در محدوده ی متغیری از نوع Integer ، که از قبل داخل فایل نوشته بودیم ، بخوانیم . مانند دستورالعمل زیر :

 

READ WORD FileNumber,Variable

 

دستور WRITE FLOAT

با این دستور می توانیم عددی اعشاری ( ممیزدار ) را در محدوده ی متغیری از نوع Float ، داخل فایل بنویسیم . مانند دستورالعمل زیر :

 

WRITE Float FileNumber,Variable

 

دستور READ FLOAT

با این دستور می توانیم عددی را در محدوده ی متغیری از نوع Float ، که از قبل داخل فایل نوشته بودیم ، بخوانیم . مانند دستورالعمل زیر :

 

READ Float FileNumber,Variable

 

برای اینکه مقدار عدد ممیز دار درست خوانده شود باید از متغیری ممیز دار نیز برای خواندن استفاده شود ، مانند مثال زیر که از متغیر #a استفاده می کنیم :

 

"Open To Read 1,"data.dat

If File Open(1)=1

#Read Float 1,a

(#Print "value = "+str$(a

EndIf

Close File 1

Wait Key

 

دستور WRITE STRING

با این دستور می توانیم عبارتی کاراکتری را ، داخل فایل بنویسیم . مانند دستورالعمل زیر :

 

WRITE STRING FileNumber,Variable

 

طبق این دستورالعمل به جای FileNumber عدد اختصاص داده شده به فایل و به جای Variable عبارتی کاراکتری قرار می دهیم ( بصورت عبارت و یا متغیر کاراکتری ) . مانند مثال زیر :

 

"Open To Write 1,"Data.dat

If File Open(1)=1

   ".Write String 1,"This Is A Data

EndIf

Close File 1

 

دستور READ STRING

با این دستور می توانیم عبارتی را که از قبل داخل فایل نوشته بودیم ، بخوانیم . مانند دستورالعمل زیر :

 

READ STRING FileNumber,Variable

 

طبق این دستورالعمل به جای FileNumber عدد اختصاص داده شده به فایل و به جای Variable متغیر کاراکتری قرار می دهیم . مانند مثال زیر :

 

"Open To Read 1,"Data.dat

If File Open(1)=1

$Read String 1,A

$Print A

EndIf

Close File 1

 

تابع FILE SIZE

این تابع اندازه ی فایل مورد نظرمان را بر حسب بایت برمی گرداند . هر 1000 بایت 1 کیلو بایت می باشد . مانند مثال زیر :

 

("Print File Size("C:data.dat



صفحه قبل 1 صفحه بعد

درباره وبلاگ


به وبلاگ من خوش آمدید
آخرین مطالب
پيوندها

تبادل لینک هوشمند
برای تبادل لینک  ابتدا ما را با عنوان آموزش ساخت بازی 3D ( سه بعدی ) به زبان Basic با دارک بیسیک D و آدرس darkbasic.LXB.ir لینک نمایید سپس مشخصات لینک خود را در زیر نوشته . در صورت وجود لینک ما در سایت شما لینکتان به طور خودکار در سایت ما قرار میگیرد.





نويسندگان


آمار وب سایت:  

بازدید امروز : 1
بازدید دیروز : 0
بازدید هفته : 1
بازدید ماه : 243
بازدید کل : 99613
تعداد مطالب : 24
تعداد نظرات : 3
تعداد آنلاین : 1